/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package tabelmodel;

import java.util.ArrayList;
import java.util.List;
import javax.swing.table.AbstractTableModel;
import model.Komposisi;

/**
 *
 * @author tashiba
 */
public class KomposisiTableModel extends AbstractTableModel {

    private List<Komposisi> komp = new ArrayList<Komposisi>();

    public KomposisiTableModel(List<Komposisi> komposisi) {
        this.komp = komposisi;
    }

    public void deleteKomposisi(int row) {
        komp.remove(row);
        fireTableRowsDeleted(row, row);
    }

    public void updateKomposisi(int row, Komposisi komposisi) {
        komp.set(row, komposisi);
        fireTableRowsUpdated(row, row);
    }

    public void addKomposisi(Komposisi komposisi) {
        komp.add(komposisi);
        fireTableRowsInserted(getRowCount() - 1, getColumnCount() - 1);
    }

    public int getRowCount() {
        return komp.size();
    }

    public int getColumnCount() {
        return 2;
    }

    public Object getValueAt(int rowIndex, int columnIndex) {
        Komposisi b = komp.get(rowIndex);
        switch (columnIndex) {
             case 0:
                return b.getIdKomposisi();
            case 1:
                return b.getNamaKomposisi();

            default:
                return "";
        }
    }

    @Override
    public String getColumnName(int column) {
        switch (column) {
             case 0:
                return "ID KOMPOSISI";
            case 1:
                return "NAMA KOMPOSISI";
            default:
                return "";
        }
    }
}

